package com.dragon.logical.service.customer;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dragon.repository.config.annotation.DataScope;
import com.dragon.repository.entity.AddPageData;
import com.dragon.repository.entity.Follow;

import java.util.List;

/**
 * <p>
 * dragon 服务类
 * </p>
 *
 * @author sy
 * @since 2023-06-20
 */
public interface FollowService extends IService<Follow> {

    /**
     * 跟进记录列表
     * @param search
     * @param adminId
     * @param customerId
     * @param page
     * @param limit
     * @return
     */
    Page<Follow> followList(String search, Integer adminId, Integer customerId, Integer page, Integer limit);

    /**
     * 添加
     * @param follow
     */
    void addFollow(Follow follow);

    /**
     * 修改
     * @param convert
     */
    void updateFollow(Follow convert);

    /**
     * 删除
     * @param id
     */
    void deleteFollow(Integer id);

    /**
     * 根据客户id查看跟进记录列表
     * @param customerId
     * @return
     */
    List<Follow> viewByCustomerId(Integer customerId);

    /**
     * 根据id查看详情
     * @param id
     * @return
     */
    Follow listById(Integer id);

    /**
     * 跟进记录（提交列表）
     * @param page
     * @param limit
     * @param adminId
     * @return
     */
    Page<Follow> submitList(Integer page, Integer limit, Integer adminId);

    /**
     * 跟进记录（接收列表）
     * @param page
     * @param limit
     * @param adminId
     * @param search 筛选用户的id
     * @return
     */
    Page<Follow> receptionList(Integer page, Integer limit, Integer adminId, Integer search);
}
